#pragma once

#include "Alice/ECS/System.hpp"
#include "Alice/Graphs/TextureRenderer.h"

namespace Alice
{

/*
    纹理渲染系统
    负责渲染静态纹理
    此系统关注的组件：TextureComp, TransformComp, ColorComp
*/
class TextureRenderSys : public System
{
public:
    inline void SetShader(const Shader& shader)
    {
        m_texture_renderer.SetShader(shader);
    }

private:
    void Before();
    void OnUpdate();
    void After();
    
    TextureRenderer m_texture_renderer;
};

} // namesapce Alice
